/**
 * 
 */
package fr.miage.shopping.metier.impl;

import fr.miage.shopping.dao.traitements.ProduitDao;
import fr.miage.shopping.metier.ProduitBusinessService;
import fr.miage.shopping.metier.entite.Categorie;
import fr.miage.shopping.metier.entite.Commande;
import fr.miage.shopping.metier.entite.Produit;
import java.util.List;



/**
 * @author romain, kristela
 * 
 */
public class ProduitBusinessServiceImpl  implements
		ProduitBusinessService {

	/**
	 * 
	 */
	private static final long serialVersionUID = 878610451929731886L;

	/**
	 * @see fr.miage.client.metier.produit.ProduitBusinessService#getProduitByCategorie(fr.miage.client.metier.entite.Categorie)
	 */

	/*
	 * Retourne une lite de produits en fonction d'une categorie
	 */
	public List<Produit> getProduitByCategorie(Categorie categorie) {
		List<Produit> listProduit = ProduitDao
				.selectProduitByCategorie(categorie);
		return listProduit;
	}
    

	@Override
	public void createProduit(Produit produit) {
	
			ProduitDao.insertProduit(produit);
	}

	@Override
	public void deleteProduit(Produit produit) {
		ProduitDao.deleteProduit(produit);
	}

	@Override
	public List<Produit> getProduitByCommande(Commande commande) {
		List<Produit>listProduit=ProduitDao.getProduitByCommande(commande);
		
		return listProduit;
	}

//	@Override
//	public List<Produit> getProduitByLigneCommande(Lignecommande ligneCommande) {
//		List<Produit>listProduit=ProduitDao.getProduitByLigneCommande(ligneCommande);
//		return listProduit;
//	}

	@Override
	public void modifyProduit(Produit oldProduit, Produit newProduit) {
		Produit p = ProduitDao.selectProduit(oldProduit);
		if (p != null && oldProduit.getIdProd() == newProduit.getIdProd()) {
			ProduitDao.updateProduit(newProduit);
		}
	}

	@Override
	public List<Produit> getAllProduit() {
		List<Produit>listProduit=ProduitDao.selectAllProduit();
		return listProduit;
	}

	@Override
	public Produit getProduit(Produit produit) {
		Produit p =ProduitDao.selectProduit(produit);
		return p;
	}

}
